package com.yourenbang.lingyun.transaction.mapper;

import com.yourenbang.lingyun.transaction.web.domain.dto.score.ScoreShoppingRedPacketDTO;
import com.yourenbang.transaction.api.model.dto.score.ScoreAccountDetailDTO;
import com.yourenbang.transaction.api.model.dto.score.ScoreChangeDTO;
import com.yourenbang.transaction.api.model.dto.score.ScoreQueryShoppingAmountDTO;
import com.yourenbang.transaction.api.model.vo.score.ScoreChangeVO;
import com.yourenbang.transaction.api.model.vo.score.ScoreJournalVO;
import com.yourenbang.transaction.api.model.vo.score.ScoreRedPacketVO;

import java.math.BigDecimal;
import java.util.List;

public interface MeScoreAccountJournalMapper {

    /**
     * 购物积分流水
     * @param dto
     * @return
     */
    List<ScoreJournalVO> queryScoreJournal(ScoreAccountDetailDTO dto);

    /**
     * 管理后台积分流水
     * @param dto
     * @return
     */
    List<ScoreChangeVO> queryManageScoreJournal(ScoreChangeDTO dto);

    /**
     * 是否弹出积分红包
     * @param dto
     * @return
     */
    ScoreRedPacketVO queryScoreRedPacket(ScoreShoppingRedPacketDTO dto);

    /**
     * 累计使用购物积分
     * @param dto
     * @return
     */
    BigDecimal queryUseScore(ScoreQueryShoppingAmountDTO dto);

    /**
     * 累计生成购物积分
     * @param dto
     * @return
     */
    BigDecimal queryProduceScore(ScoreQueryShoppingAmountDTO dto);

}